//package com.fy.fyspace.common.sharding;
//
//import org.apache.shardingsphere.sharding.api.sharding.standard.PreciseShardingValue;
//import org.apache.shardingsphere.sharding.api.sharding.standard.RangeShardingValue;
//import org.apache.shardingsphere.sharding.api.sharding.standard.StandardShardingAlgorithm;
//
//import java.util.ArrayList;
//import java.util.Collection;
//import java.util.Properties;
//
///**
// * 图片分表算法
// */
//public class PictureShardingAlgorithm implements StandardShardingAlgorithm<Long> {
//
//    @Override
//    public String doSharding(Collection<String> availableTargetNames, PreciseShardingValue<Long> preciseShardingValue) {
//        Long spaceId = preciseShardingValue.getValue();
//        String logicTableName = preciseShardingValue.getLogicTableName();
//        // spaceId 为 null 表示查询所有图片
//        if (spaceId == null) {
//            return logicTableName;
//        }
//        // 根据 spaceId 动态生成分表名
//        String realTableName = "picture_" + spaceId;
//        if (availableTargetNames.contains(realTableName)) {
//            return realTableName;
//        } else {
//            return logicTableName;
//        }
//    }
//
//    @Override
//    public Collection<String> doSharding(Collection<String> collection, RangeShardingValue<Long> rangeShardingValue) {
//        return new ArrayList<>();
//    }
//
//    @Override
//    public Properties getProps() {
//        return null;
//    }
//
//    @Override
//    public void init(Properties properties) {
//
//    }
//}